/************************************************************
 * VERSION
 ************************************************************/

#ifndef GKT_VERSION_H
#define GKT_VERSION_H

#include "gkt_config.h"

#define HW_VERSION_STRING_L2(version)	#version
#define HW_VERSION_STRING_L1(version)	HW_VERSION_STRING_L2(version)
#ifdef GKT_CONFIG_HW_VERSION
#define GKT_HW_VERSION_STRING	HW_VERSION_STRING_L1(GKT_CONFIG_HW_VERSION)
#else
#define GKT_HW_VERSION_STRING	HW_VERSION_STRING_L1(V0P0)
#endif

#define GKT_WINDOW_DATE_YEAR_DEFAULT	2024

#define GKT_SW_VERSION_MAJOR	3
#define GKT_SW_VERSION_MINOR	3
#define GKT_SW_VERSION_REVISION	69
#define GKT_SW_VERSION	\
	((GKT_SW_VERSION_MAJOR << 16) | (GKT_SW_VERSION_MINOR << 8) \
		| GKT_SW_VERSION_REVISION)

#define SW_VERSION_STRING_L3(major_str, minor_str, revision_str)	\
	"V"major_str"."minor_str"."revision_str
#define SW_VERSION_STRING_L2(major, minor, revision)	\
	SW_VERSION_STRING_L3(#major, #minor, #revision)
#define SW_VERSION_STRING_L1(major, minor, revision)	\
	SW_VERSION_STRING_L2(major, minor, revision)
#define GKT_SW_VERSION_STRING	\
	SW_VERSION_STRING_L1(GKT_SW_VERSION_MAJOR, GKT_SW_VERSION_MINOR, \
		GKT_SW_VERSION_REVISION)

#if defined(GKT_CONFIG_KX_VERSION) && GKT_CONFIG_KX_VERSION	
#define GKT_SW_KX_VERSION_MAJOR	3
#define GKT_SW_KX_VERSION_MINOR	2
#define GKT_SW_KX_VERSION_REVISION	11
#define GKT_SW_KX_VERSION	\
	((GKT_SW_KX_VERSION_MAJOR << 16) | (GKT_SW_KX_VERSION_MINOR << 8) \
		| GKT_SW_KX_VERSION_REVISION)		
#define GKT_SW_KX_VERSION_STRING	\
	SW_VERSION_STRING_L1(GKT_SW_KX_VERSION_MAJOR, GKT_SW_KX_VERSION_MINOR, \
		GKT_SW_KX_VERSION_REVISION)
#endif

/************************************************************
 * SW VERSION HISTORY
 ************************************************************
 * init version
 * based on: 9ebfbdece2b7f28506f876e3b03fdf09fec5d57d
 ************************************************************/

#endif	/* GKT_VERSION_H */

